//package com.common.util;
//
//import com.li.model.MyMassage;
//import com.li.model.MyUDP;
//import com.li.model.MyUDPList;
//import lombok.Data;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Component;
//
//import java.io.IOException;
//import java.net.DatagramPacket;
//import java.net.DatagramSocket;
//import java.net.InetAddress;
//import java.net.UnknownHostException;
//import java.nio.charset.StandardCharsets;
//
//@Component
//@Data
//public class UDPUtil {
//    @Autowired
//    private static MyUDPList udpList;
//    public  static String sendMassage(String data){
//        //1.建立连接
//        DatagramSocket socket = null;
//        //2.获得连接对象
//        InetAddress Ip = null;
//        //目标端口
//        int port = 8999;
//
//        DatagramPacket packet = null;
//        MyUDP udp = null;
//        try {
//            udp = udpList.getUDP();
//            if (udp == null){
//                return "没有可用端口，请稍后再试";
//            }
//            socket = udp.getSocket();
//
//            //4.创建数据包
//            String msg = MyJSONUtil.toJsonString(new MyMassage(data,udp.getMyPort()));
//            try {
//                Ip = InetAddress.getByName("172.26.2.133");
//            } catch (UnknownHostException e) {
//
//                e.printStackTrace();
//                return "IP未找到";
//            }
//            //数据,数据的长度起始，发送的地址
//            byte[] bytes = msg.getBytes(StandardCharsets.UTF_8);
//            packet = new DatagramPacket(bytes,0,bytes.length,Ip, port);
////            for (byte b :msg.getBytes(StandardCharsets.UTF_8)){
////                System.out.println(b);
////            }
//            //5.发送包
//            socket.send(packet);
//
//            System.out.println("发送数据---》"+msg);
//            String receiveMassage = receiveMassage(socket);
//            udp.setUsing(false);
//            return receiveMassage;
//        } catch (IOException e) {
//            e.printStackTrace();
//            return "服务器发送请求失败，请稍后再试";
//        }finally {
//            //6.关闭资源
//            if (socket != null){
//                socket.disconnect();
//            }
//        }
//
//    }
//    public static String receiveMassage(DatagramSocket socket){
//        //DatagramSocket socket = null;
//        String massage = "未收到数据,请稍后再试";
//        MyUDP udp = null;
//        try {
//            //1.开启自己的端口（客户端连接的端口） 8900-8905
//            //udp = udpLists.getUDP();
//            //socket = udp.getSocket();
//            //2.接收数据
//            byte[] buffer = new byte[512];
//            DatagramPacket packet = new DatagramPacket(buffer,0,buffer.length);
//            socket.receive(packet);//堵塞接收
//            //处理数据
//            byte[] target = packet.getData();
//            int len=0;
//            if (target.length!=0){
//                for (int i=0;i<target.length;i++){
//                    if (target[i]=='\0'){
//                        len=i;
//                        break;
//                    }
//                }
//            }
//            massage = new String(target,0,len, StandardCharsets.UTF_8);
//            System.out.println("from:"+packet.getAddress()+"收到："+massage);
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//        return massage;
//    }
//}
